package com.opal.modules.costReportForm.service;

import com.opal.domain.R;
import com.opal.domain.ReturnMessageData;
import com.opal.modules.costReportForm.entity.table.CostApprovals;

public interface ApprovalTaskService {

	ReturnMessageData submitFileService(String id, String ProcessKey, String saleType) throws Exception;

	/**
	 * 获取审批任务
	 * @param flowId
	 * @return
	 */
	Object querySelfTaskService(String flowId);

	ReturnMessageData approvalProcessService(CostApprovals costApprovals, Integer num, Integer result, Integer resubmit);

    Object querySelfSubmiTtaskService(int page, int rows);

	/**
	 * 查询：审批进度详情
	 * @param processInstanceId
	 * @return
	 */
	Object getAllProcessInstanceTaskService(String processInstanceId);

	/**
	 * 查询：已完成的任务
	 * @return
	 */
	Object queryCompletionTaskService(int page, int rows);

	/**
	 *  查询：根据业务id获取当前流程实例对象
	 * @param business
	 * @return
	 */
	Object queryHistoryProcessByBusiness(String business);

	/**
	 * 删除：根据业务id删除流程实例
	 * 步骤：1先根据业务id查询流程实例--2根据流程实例id结束流程----3根据流程实例id删除所有流程信息
	 * @param businessId    业务id
	 * @return
	 */
	R deleteHistoryProcessByBusiness(String businessId);


}
